/*--------------------------------*- C++ -*----------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  dev
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
FoamFile
{
    format      ascii;
    class       volVectorField;
    location    "0";
    object      U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [0 1 -1 0 0 0 0];

internalField   uniform (0 0 0);

boundaryField
{
    #includeEtc "caseDicts/setConstraintTypes"

    inletFuel
    {
        type            flowRateInletVelocity;
        massFlowRate
        {
            type            table;
            units           ([CAD] [g/CAD]);
            valuesOld
            (
                (0          0.0)
                (625        0.0)
                (627.5      0.5)
                (630        0.9)
                (632.5      0.9)
                (635        0.5)
                (637.5      0.0)
                (720        0.0)
            );

            values
            (
                (0          0.0)
                (625        0.0)
                (627.5      0.15)
                (630        0.35)
                (632.5      0.35)
                (635        0.35)
                (637.5      0.15)
                (720        0.0)
            );
            outOfBounds     repeat;
            interpolationScheme linear;
        }
        profile             turbulentBL;
        rho                 rho;
        rhoInlet            0.7;
    }

    inlet
    {
        type            pressureInletOutletVelocity;
        value           uniform (0 0 0);
    }

    outlet
    {
        type            pressureInletOutletVelocity;
        value           uniform (0 0 0);
    }

    piston
    {
        type            movingWallVelocity;
        value           uniform (0 0 0);
    }

    liner
    {
        type            noSlip;
    }

    cylinderHead
    {
        type            noSlip;
    }

    ivHead
    {
        type            movingWallVelocity;
        value           uniform (0 0 0);
    }

    ivStem
    {
        type            movingWallVelocity;
        value           uniform (0 0 0);
    }

    evHead
    {
        type            movingWallVelocity;
        value           uniform (0 0 0);
    }

    evStem
    {
        type            movingWallVelocity;
        value           uniform (0 0 0);
    }

    frontAndBack
    {
        type            empty;
    }

    "nonCouple.*"
    {
        type            slip;
    }
}


// ************************************************************************* //
